package com.dingreading.cloud.admin.dto;

import com.dingreading.cloud.admin.entity.StoreContractFile;
import com.dingreading.cloud.admin.entity.StoreContractGift;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

@Data
public class StoreContractDto implements Serializable {

    private static final long serialVersionUID = 1L;

    private Long id;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date addTime;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date editTime;

    private String addStaffUid;

    private String addStaffName;

    private String lastStaffUid;

    private String lastStaffName;

    private String corpUid;

    private String storeUid;

    private String contractCode;

    private String content;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date beginDate;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date endDate;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date signDate;

    private Integer signStatus;

    private Double amount;

    private String sellerName;

    /**
     * 保证金
     */
    private Double deposit;

    /**
     * 保证金是否已退 0.未退 1.已退
     */
    private Integer depositRefundStatus;

    /**
     * 合同类型 1.授权协议，2.地址类补充协议，3.授权转让补充协议，4.解约协议，5.其他
     */
    private Integer contractType;
    private String contractTypeName;
    private String storeName;
    private String corpName;

    private List<StoreContractFile> fileList;

}
